Case স্টেটমেন্ট রুবি প্রোগ্রামিং ভাষায় একটি গুরুত্বপূর্ণ কন্ট্রোল ফ্লো স্টেটমেন্ট, যা নির্দিষ্ট শর্ত বা মানের উপর ভিত্তি করে একাধিক শাখায় বিভক্ত হতে সহায়তা করে। এটি সাধারণত switch বা select কন্ডিশনের মতো কাজ করে, যেখানে একাধিক বিকল্পের মধ্যে নির্বাচন করা হয়। রুবি ভাষায় case স্টেটমেন্টটি কন্ডিশনাল লজিককে আরও সহজ এবং পঠনযোগ্য করে তোলে।
১. Case স্টেটমেন্টের কাঠামো
রুবিতে case স্টেটমেন্টটি এমনভাবে লেখা হয়:
case variable
when condition1
# condition1 পূর্ণ হলে এখানে কোড
when condition2
# condition2 পূর্ণ হলে এখানে কোড
else
# উপরের কোনো শর্ত না পূর্ণ হলে এখানে কোড
endএখানে, variable হলো সেই মান বা ভেরিয়েবল যেটি আপনি চেক করতে চান। when ব্লকের মধ্যে আপনি একাধিক শর্ত দিতে পারেন, এবং যদি কোনো শর্ত মিলে যায়, তখন সেই শর্তের কোডটি চালিত হবে। যদি কোনো শর্ত পূর্ণ না হয়, তবে else ব্লকটি কার্যকর হবে।
২. Case স্টেটমেন্টের উদাহরণ
উদাহরণ ১: সাধারন Case স্টেটমেন্ট
number = 3
case number
when 1
puts "Number is One"
when 2
puts "Number is Two"
when 3
puts "Number is Three"
else
puts "Number is not between 1 and 3"
endআউটপুট:
Number is Threeএখানে, number ভেরিয়েবলের মান 3 হওয়ায় when 3 শর্তটি পূর্ণ হয় এবং "Number is Three" মুদ্রিত হয়।
উদাহরণ ২: else ব্লক ব্যবহার
day = "Monday"
case day
when "Monday"
puts "Start of the week"
when "Friday"
puts "End of the week"
else
puts "Midweek"
endআউটপুট:
Start of the weekএখানে, day এর মান "Monday" হওয়ায় when "Monday" শর্তটি পূর্ণ হয় এবং "Start of the week" আউটপুট হয়।
উদাহরণ ৩: Range ব্যবহার করে Case স্টেটমেন্ট
রুবিতে range ব্যবহার করে case স্টেটমেন্টে শর্ত দেওয়া যেতে পারে, যেমন সংখ্যার একটি পরিসর চেক করা:
number = 15
case number
when 0..10
puts "Number is between 0 and 10"
when 11..20
puts "Number is between 11 and 20"
else
puts "Number is greater than 20"
endআউটপুট:
Number is between 11 and 20এখানে, number ভেরিয়েবলের মান ১৫, যা 11..20 রেঞ্জে পড়ে, তাই "Number is between 11 and 20" আউটপুট হয়।
৩. Case স্টেটমেন্টে মাল্টিপল শর্ত
একটি case স্টেটমেন্টে একাধিক শর্ত দেয়া যেতে পারে। উদাহরণস্বরূপ, যদি কোনো ভেরিয়েবল একাধিক মানের মধ্যে পড়ে, তবে সব শর্তের জন্য একটি একক when ব্যবহার করা যেতে পারে।
fruit = "apple"
case fruit
when "apple", "banana"
puts "It's a fruit"
when "carrot"
puts "It's a vegetable"
else
puts "Unknown item"
endআউটপুট:
It's a fruitএখানে, fruit ভেরিয়েবলটি "apple" হলে, প্রথম when শর্তটি পূর্ণ হয় এবং "It's a fruit" মুদ্রিত হয়।
৪. Case স্টেটমেন্টে রিটার্ন ব্যবহার
এটি একটি ফাংশন বা মেথডে ব্যবহার করতে হলে, return স্টেটমেন্টও ব্যবহার করা যেতে পারে। ফাংশনের মধ্যে কেস স্টেটমেন্ট দিয়ে সিদ্ধান্ত নেওয়া যেতে পারে।
def check_day(day)
case day
when "Monday"
return "Start of the week"
when "Friday"
return "End of the week"
else
return "Midweek"
end
end
puts check_day("Friday")আউটপুট:
End of the weekএখানে, check_day মেথডে day ভেরিয়েবলের মান "Friday" থাকলে, when "Friday" শর্তটি পূর্ণ হয় এবং "End of the week" রিটার্ন করা হয়।
সারসংক্ষেপ
Case স্টেটমেন্ট রুবি প্রোগ্রামিং ভাষায় একটি শক্তিশালী কন্ট্রোল ফ্লো স্টেটমেন্ট, যা একাধিক শর্তের মধ্যে থেকে একটি নির্বাচন করার জন্য ব্যবহৃত হয়। এটি কোডকে আরও পরিষ্কার এবং পঠনযোগ্য করে তোলে, বিশেষত যখন একাধিক শর্তের মধ্যে থেকে একটি নির্বাচন করা হয়। when ব্লক ব্যবহার করে একাধিক শর্ত দেওয়া যায় এবং else ব্লকটি ব্যবহার করে ডিফল্ট আচরণ নির্ধারণ করা যায়।
Read more